Skip to content

Member Page#514

Merged
Francisca105 merged 3 commits intostagingfrom
francisca/member-page
Nov 13, 2025
Merged

Member Page#514
Francisca105 merged 3 commits intostagingfrom
francisca/member-page

Conversation

@Francisca105
Copy link
Copy Markdown
Member

Closes #513.

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a Member detail view page to the application. It introduces a new route and view component for displaying member information, including their contact details, speakers they're associated with, companies they work with, and their participation history across events and teams. The autocomplete search functionality is also enhanced to support member searches alongside companies and speakers.

  • New member detail page with comprehensive member information display
  • Enhanced search autocomplete to include members
  • Added navigation links to member pages from speaker and company member lists

Reviewed Changes

Copilot reviewed 7 out of 7 changed files in this pull request and generated no comments.

Show a summary per file
File Description
frontend/src/views/Dashboard/Members/MemberView.vue New view component displaying member details, participations, associated speakers and companies
frontend/src/router.ts Added route configuration for the member detail page
frontend/src/components/CompanyOrSpeakerOrMemberAutocompleteWithDialog.vue Renamed from CompanyOrSpeakerAutocompleteWithDialog and extended to support member search
frontend/src/components/Navbar.vue Updated to use renamed autocomplete component and handle member selection
frontend/src/components/speakers/MembersSpeakers.vue Wrapped member display with RouterLink for navigation to member page
frontend/src/components/companies/MembersCompanies.vue Wrapped member display with RouterLink for navigation to member page
frontend/src/api/members.ts Added API functions for fetching member details and participations
Comments suppressed due to low confidence (4)

frontend/src/components/CompanyOrSpeakerOrMemberAutocompleteWithDialog.vue:455

  • The getItemIndex function may return incorrect results when companies, speakers, and members have overlapping IDs. Since items of different types can have the same ID, the function should also compare the type property to ensure it finds the correct item.
    frontend/src/components/CompanyOrSpeakerOrMemberAutocompleteWithDialog.vue:450
  • The results computed property creates new objects for all items on every computation. Consider memoizing or adding the type property only when needed to avoid unnecessary object creation on each reactive update.
    frontend/src/components/CompanyOrSpeakerOrMemberAutocompleteWithDialog.vue:521
  • The type checking now uses the type property added in the results array, but this approach requires type assertions. The previous approach using 'companyName' in selectedResult' was a type guard. Consider defining a discriminated union type with explicit type fields in the DTO definitions instead of adding type properties at runtime.
    frontend/src/components/CompanyOrSpeakerOrMemberAutocompleteWithDialog.vue:469
  • The comment states 'Member may have an img property' but doesn't explain when this property might be missing or what the fallback behavior is. Consider clarifying the expected behavior or adding a fallback value when the property is undefined.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@Francisca105 Francisca105 merged commit 6900b22 into staging Nov 13, 2025
7 checks passed
@Francisca105 Francisca105 deleted the francisca/member-page branch November 13, 2025 21:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants